7 research outputs found

    Mechanical Search: Multi-Step Retrieval of a Target Object Occluded by Clutter

    Full text link
    When operating in unstructured environments such as warehouses, homes, and retail centers, robots are frequently required to interactively search for and retrieve specific objects from cluttered bins, shelves, or tables. Mechanical Search describes the class of tasks where the goal is to locate and extract a known target object. In this paper, we formalize Mechanical Search and study a version where distractor objects are heaped over the target object in a bin. The robot uses an RGBD perception system and control policies to iteratively select, parameterize, and perform one of 3 actions -- push, suction, grasp -- until the target object is extracted, or either a time limit is exceeded, or no high confidence push or grasp is available. We present a study of 5 algorithmic policies for mechanical search, with 15,000 simulated trials and 300 physical trials for heaps ranging from 10 to 20 objects. Results suggest that success can be achieved in this long-horizon task with algorithmic policies in over 95% of instances and that the number of actions required scales approximately linearly with the size of the heap. Code and supplementary material can be found at http://ai.stanford.edu/mech-search .Comment: To appear in IEEE International Conference on Robotics and Automation (ICRA), 2019. 9 pages with 4 figure

    Linux Support for Memory Traffic Shaping

    No full text
    Although parallel computer architectures have become ubiquitous, mem- ory bandwidth places severe limits on the scalability and performance of these systems as the number of cores on a single chip grows. A potential way to address this critical issue has been designed by the Princeton Parallel Group { MITTS (Memory Inter-arrival Time Tra c Shaping), a distributed hardware mechanism that classifies and shapes tra c between each core and main memory based on the time between successive requests. Shaping mem- ory tra c on a per-core basis enables fine-tuned bandwidth allocation and increases both efficiency and fairness for multi-program workloads. This work develops the operating system-level software necessary to support and fully exploit the capabilities that MITTS provides and to test its performance un- der datacenter-like workloads. We use the Princeton Parallel Group's 25-core Piton processor as a hardware platform and the Linux operating system as the starting point for our development. From there, we successfully imple- ment and test a comprehensive Linux subsystem that allows users to securely configure MITTS on a per-thread or per-user basis with a simple, familiar system call interface
    corecore